package cn.gok.server.service;

import cn.gok.common.entity.customer.CustomerInfo;
import cn.gok.common.entity.customer.CustomerLogin;
import com.github.pagehelper.PageInfo;

import java.util.List;

/**
 * @author: DxlinY
 * @apiNote:
 * @date: 2020/11/14
 * @time: 15:48
 */
public interface CustomerInfoBackstageService extends BaseService {
    /**
     * 通过id修改客户信息
     *
     * @param customerInfo 客户信息
     * @return int
     * @author dxliny
     */
    int updateCustomerInfoById(CustomerInfo customerInfo);


    /**
     * 批量删除客户信息
     *
     * @param ids 客户编号列表
     * @return int
     */
    int delCustomerInfoByIds(List <Long> ids);

    /**
     * 真实删除该数据
     *
     * @param ids 客户编号列表
     * @return int
     */
    int delCustomerInfoByIdTrue(List <Long> ids);

    /**
     * 新增
     *
     * @param customerInfo 客户信息
     * @return int
     * @author dxliny
     */
    int insertCustomerInfo(CustomerInfo customerInfo);

    /**
     * 通过id获取客户的相关信息
     *
     * @param id 编号
     * @return CustomerInfo
     * @author dxliny
     */
    CustomerInfo getCustomerInfoById(Long id);


    /**
     * 批量修改
     *
     * @param ids
     * @return
     */
    int updateCustomerInfos(String[] ids);

    /**
     * 查询已删除的客户
     *
     * @return
     */
    PageInfo pageDel(int page, int limit);

    /**
     * 已逻辑删除数据恢复
     *
     * @param customerInfId 用户编号
     * @return int
     */
    int delRollBack(Long customerInfId);

    /**
     * 直接修改用户密码
     *
     * @param customerLogin 用户对象
     * @return int
     */
    int updatePwdByCustomerId(CustomerLogin customerLogin);
}
